package com.fjbdxk.beidou.bd;

import java.util.Date;

/**
 * 设备（风机）1个测点数据
 */
//封装设备数据，主要包含与设备相关的标签配置、数据值和时间戳
public class DeviceData {
    final TagConfig tagConfig;//标签配置
    final Date dt;//时间戳
    final double value;//数值
    // 构造函数，接受一个 TagConfig 对象、一个整型数据和一个 Date 对象作为参数
    DeviceData(TagConfig tagConfig, int data, Date dt) {
        this.tagConfig = tagConfig;// 将传入的 tagConfig 赋值给类的成员变量 tagConfig
        this.value = tagConfig.convertToOriginal(data);
        this.dt = dt;
    }

    DeviceData(TagConfig tagConfig, double value) {
        this.tagConfig = tagConfig;
        this.value = value;
        this.dt = null;
    }

    /**
     * 形成字节数组
     * @return 字节数组
     */
    public byte[] toBytes() {
        return tagConfig.convertToStore(value);
    }
}

